package com.hmall.common.client;

import com.hmall.common.dto.Item;
import com.hmall.common.dto.PageDTO;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestParam;

//给feign指定远程访问的服务名
@FeignClient("itemservice")
public interface ItemFeignClient {
    /**
     *  指定需要被远程调用方法
     *  分页查询数据
     *   TODO:请求路径中一定要包含服务类上的窄化路径，否则找不到服务
     */
    @GetMapping("/item/list")
    PageDTO<Item> getItemByPage(@RequestParam("page") Integer current, @RequestParam("size") Integer pageSize);

    /**
     * 指定需要被远程调用方法
     * 根据id查询商品
     *  TODO:请求路径中一定要包含服务类上的窄化路径，否则找不到服务
     */
    @GetMapping("/item/{id}")
    Item getItermById(@PathVariable("id") Long id);

}
